/**
 * 
 */
package os.filesystem.storage;

import java.io.FileNotFoundException;
import java.io.IOException;

import os.filesystem.file.File;

/**
 *
 * @author Raghav Sidhanti
 * @since Mar 6, 2012 11:34:30 AM
 *
 */
public interface IO {

	/**
	 * Writes a file to storage device.
	 * 
	 * @param f
	 */
	public void write(File f);
	
	/**
	 * Retrieves a file from the storage device.
	 * 
	 * @param f
	 * @return
	 * @throws ClassNotFoundException 
	 * @throws IOException 
	 */
	public File read(String f) throws IOException, ClassNotFoundException;

	/**
	 * Deletes a file from the storage device.
	 * @param f
	 * @throws FileNotFoundException 
	 */
	public void delete(String f) throws FileNotFoundException;
}
